package com.uatair.system.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.uatair.common.annotation.Excel;
import lombok.Data;
import lombok.ToString;

import java.util.Date;

/**
 * 历史任务信息对象 tp_project_task
 *
 * @author uatair
 * @date 2025-06-23
 */
@Data
@ToString
@TableName("tp_project_task")
public class TpProjectTask
{
    private static final long serialVersionUID = 1L;

    /** 任务id-植保云任务id */
    @TableId(value = "id", type = IdType.INPUT)  // 明确指定主键
    private Integer id;

    private String taskId;

    /** 任务名称 */
    @Excel(name = "任务名称")
    private String name;

    /** 所属第三方id */
    private Long platformId;

    /** 所属第三方名称 */
    @Excel(name = "所属第三方名称")
    private String platformName;

    /** 开始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startDate;

    /** 结束日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endDate;

    /** 启动状态 0-关闭 1-开启 */
    @Excel(name = "启动状态 0-关闭 1-开启")
    private String status;

    /** 推送状态 0-未推送 1-进行中 2-已完成 */
    @Excel(name = "推送状态 0-未推送 1-进行中 2-已完成")
    private String executeStatus;

    /** 删除标记 */
    @Excel(name = "删除标记")
    @TableLogic(value = "0", delval = "1")
    private Integer delFlag = 0;

    /** 平台父级id（大节点id） */
    @TableField(exist = false)
    private Integer parentId;

    @TableField(exist = false)
    private Integer pushCount;

    @TableField(exist = false)
    private Integer successCount;
}
